{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#  Introduction to atomman: Region selectors\n",
    "\n",
    "__Lucas M. Hale__, [lucas.hale@nist.gov](mailto:lucas.hale@nist.gov?Subject=ipr-demo), _Materials Science and Engineering Division, NIST_.\n",
    "    \n",
    "[Disclaimers](http://www.nist.gov/public_affairs/disclaimer.cfm) "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 1. Introduction<a id='section1'></a>\n",
    "\n",
    "*Added version 1.3.0*\n",
    "\n",
    "It can be useful during both system construction and analysis to identify and select atoms within specific regions of space.  The atomman.region submodule allows for geometric regions to be defined and have methods for identifying if the points are above/below or inside/outside the shapes."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "__Library imports__"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "atomman version = 1.4.0\n",
      "Notebook executed on 2021-08-05\n"
     ]
    }
   ],
   "source": [
    "# Standard Python libraries\n",
    "import datetime\n",
    "\n",
    "# http://www.numpy.org/\n",
    "import numpy as np\n",
    "\n",
    "# https://github.com/usnistgov/atomman\n",
    "import atomman as am\n",
    "\n",
    "# https://matplotlib.org/\n",
    "import matplotlib.pyplot as plt\n",
    "%matplotlib inline\n",
    "\n",
    "# Show atomman version\n",
    "print('atomman version =', am.__version__)\n",
    "\n",
    "# Show date of Notebook execution\n",
    "print('Notebook executed on', datetime.date.today())"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Define function for plotting projection plots of atoms, with positions given by pos and colors by atype."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "def projectionplots(atoms):\n",
    "    f, (ax1, ax2, ax3) = plt.subplots(1, 3, figsize=(14,4))\n",
    "\n",
    "    ax1.scatter(atoms.pos[:,0], atoms.pos[:,1], marker='o', c=atoms.atype)\n",
    "    ax1.set_xlabel('x')\n",
    "    ax1.set_ylabel('y')\n",
    "\n",
    "    ax2.scatter(atoms.pos[:,0], atoms.pos[:,2], marker='o', c=atoms.atype)\n",
    "    ax2.set_xlabel('x')\n",
    "    ax2.set_ylabel('z')\n",
    "\n",
    "    ax3.scatter(atoms.pos[:,1], atoms.pos[:,2], marker='o', c=atoms.atype)\n",
    "    ax3.set_xlabel('y')\n",
    "    ax3.set_ylabel('z')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "def projectionplots(atoms):\n",
    "    f, (ax1, ax2, ax3) = plt.subplots(1, 3, figsize=(14,4))\n",
    "\n",
    "    # Separate by atype\n",
    "    for atype in atoms.atypes:\n",
    "        pos = atoms.pos[atoms.atype == atype]\n",
    "        \n",
    "        ax1.plot(pos[:,0], pos[:,1], 'o')\n",
    "        ax2.plot(pos[:,0], pos[:,2], 'o')\n",
    "        ax3.plot(pos[:,1], pos[:,2], 'o')\n",
    "    \n",
    "    ax1.set_xlabel('x')\n",
    "    ax1.set_ylabel('y')\n",
    "    ax1.set_xlim(-40, 40)\n",
    "    ax1.set_ylim(-40, 40)\n",
    "    \n",
    "    ax2.set_xlabel('x')\n",
    "    ax2.set_ylabel('z')\n",
    "    ax2.set_xlim(-40, 40)\n",
    "    ax2.set_ylim(-40, 40)\n",
    "    \n",
    "    ax3.set_xlabel('y')\n",
    "    ax3.set_ylabel('z')\n",
    "    ax3.set_xlim(-40, 40)\n",
    "    ax3.set_ylim(-40, 40)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Construct a demonstration fcc system"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 1008x288 with 3 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "box = am.Box.cubic(a=3.6)\n",
    "atoms = am.Atoms(pos=[[0.0, 0.0, 0.0], [0.0, 0.5, 0.5], [0.5, 0.0, 0.5], [0.5, 0.5, 0.0]])\n",
    "ucell = am.System(box=box, atoms=atoms)\n",
    "system = ucell.supersize((-10, 10), (-10, 10), (-10, 10))\n",
    "\n",
    "projectionplots(system.atoms)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 2. Plane slicing<a id='section2'></a>\n",
    "\n",
    "The atomman.region.Plane class allows for a plane to be defined, which can then be used to slice a system. Making a planar slice consists of two steps: defining a Plane, then using it to identify all atoms above/below it.\n",
    "\n",
    "### 2.1. Initializing a Plane\n",
    "\n",
    "A plane can be uniquely defined in space using a normal vector and a single point located anywhere in that plane.\n",
    "        \n",
    "- **normal** (*array-like object*) 3D normal vector of the plane.\n",
    "- **point** (*array-like object*) 3D vector coordinate of any point in the plane."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 2.2. Plane.above() and Plane.below()\n",
    "\n",
    "Slices can then be made using the plane's above() and below() methods. These are defined to be opposite functions: any atoms not \"below\" are \"above\".\n",
    "\n",
    "        \n",
    "- **pos** (*array-like object*) Nx3 array of coordinates. \n",
    "- **inclusive** (*bool, optional*) Indicates if points in the plane are to be included.  Default value is True for below() and False for above().\n",
    "\n",
    "Returns\n",
    "\n",
    "- (*numpy.NDArray*) N array of bool values"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 2.3. Examples"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Use Plane and System.atoms_ix to remove all atoms with positive y values"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 1008x288 with 3 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Define a simple plane normal to the y-axis at the origin\n",
    "plane = am.region.Plane(normal=[0,1,0], point=[0,0,0])\n",
    "\n",
    "# Identify all atoms below the plane\n",
    "isbelow = plane.below(system.atoms.pos)\n",
    "\n",
    "# Use atoms_ix to build new system with only the below atoms\n",
    "newsystem = system.atoms_ix[isbelow]\n",
    "\n",
    "# Make projectionplots\n",
    "projectionplots(newsystem.atoms)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Due to atomman's design, region selections can also be made on per-atom properties themselves allowing for easily modifying or analyzing the properties of atoms in specific regions."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 1008x288 with 3 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Define a plane with more complicated normal and position\n",
    "plane = am.region.Plane(normal=[1.5, -1.4, 5.2], point=[-5.7, 1.2, 7.1])\n",
    "\n",
    "# Change atypes of all atoms above the plane\n",
    "system.atoms.atype[plane.above(system.atoms.pos)] = 2\n",
    "\n",
    "# Make projectionplots\n",
    "projectionplots(system.atoms)\n",
    "\n",
    "# Reset all atypes back to 1\n",
    "system.atoms.atype = 1"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 3. Volume selection<a id='section3'></a>\n",
    "\n",
    "Points inside/outside of volumes can also be selected based on a number of simple geometric shapes.  Each shape is defined as a separate subclass of the template Shape class."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 3.1. Shape.inside() and Shape.outside()\n",
    "\n",
    "Indicates if position(s) are inside/outside the shape. These are defined to be opposite functions: any atoms not \"inside\" are \"outside\".\n",
    "                \n",
    "- **pos** (*array-like object*) Nx3 array of coordinates. \n",
    "- **inclusive** (*bool, optional*) Indicates if points on the shape's boundaries are to be included. Default value is True for inside, False for outside.\n",
    "        \n",
    "Returns\n",
    "        \n",
    "- (*numpy.NDArray*) N array of bool values."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 3.2. Box\n",
    "\n",
    "The atomman.Box class used in defining the regions of atomic systems already provides a comprehensive representation of a generic parallelepiped. As such, the class has been extended to be a child of Shape, complete with inside/outside functions."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Show that all atoms in the system are inside the box, but only a few atoms are inside the original unit cell"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "system has 32000 atoms\n",
      "32000 atoms are inside system's box\n",
      "4 atoms are inside ucell's box\n"
     ]
    }
   ],
   "source": [
    "print(f'system has {system.natoms} atoms')\n",
    "\n",
    "# count number of system's atoms inside system's box\n",
    "numinside = np.sum(system.box.inside(system.atoms.pos))\n",
    "\n",
    "print(f\"{numinside} atoms are inside system's box\")\n",
    "\n",
    "# count number of system's atoms inside ucell's box\n",
    "numinside = np.sum(ucell.box.inside(system.atoms.pos))\n",
    "\n",
    "print(f\"{numinside} atoms are inside ucell's box\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 3.3. Sphere\n",
    "\n",
    "Spherical selections can be made using the atomman.region.Sphere class.  Spheres are easily defined with just a center point and a radius.\n",
    "\n",
    "- **center** (*array-like object*) The position of the sphere's center.\n",
    "- **radius** (*float*) The sphere's radius. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 1008x288 with 3 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Define a sphere at the origin with a radius of 30\n",
    "sphere = am.region.Sphere([0,0,0], 30)\n",
    "\n",
    "# Slice to create spherical particle system\n",
    "newsystem = system.atoms_ix[sphere.inside(system.atoms.pos)]\n",
    "\n",
    "# Make projectionplots\n",
    "projectionplots(newsystem.atoms)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 3.4. Cylinder\n",
    "\n",
    "Cylindrical selections can be made using the atomman.region.Cylinder class.  \n",
    "        \n",
    "- **center1** (*array-like object*) A point on the cylinder's axis.  If endcaps is True, the point is taken as the center of one of the cylinder's endcap planes.\n",
    "- **center2** (*array-like object*) A point on the cylinder's axis.  If endcaps is True, the point is taken as the center of one of the cylinder's endcap planes.\n",
    "- **radius** (*float*) The cylinder's radius.\n",
    "- **endcaps** (*bool, optional*) Indicates if the cylindrical volume is taken as capped at the two ends. If False, only the radial distances from the axis will be considered. If True, positions are also checked to see if they are above/below the planes defined by the axis and the center points.  Default value is True.\n",
    "\n",
    "These parameters were selected to provide the most concise representation of a generic cylinder.  Note that the cylinder's axis vector is related to the two center points as \n",
    "\n",
    "$$ axis = \\frac{center2 - center1}{|center2 - center1|}$$"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Create a cylindrical particle using cylinder"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 1008x288 with 3 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Define a cylinder with axis along the z axis\n",
    "center1 = [0, 0, -20]\n",
    "center2 = [0, 0, 20]\n",
    "radius = 30\n",
    "cylinder = am.region.Cylinder(center1, center2, radius)\n",
    "\n",
    "# Slice to create cylindrical particle system\n",
    "newsystem = system.atoms_ix[cylinder.inside(system.atoms.pos)]\n",
    "\n",
    "# Make projectionplots\n",
    "projectionplots(newsystem.atoms)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Change endcaps to false to ignore plane boundaries and create a nanowire system instead"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 1008x288 with 3 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "cylinder.endcaps = False\n",
    "\n",
    "# Slice to create cylindrical particle system\n",
    "newsystem = system.atoms_ix[cylinder.inside(system.atoms.pos)]\n",
    "\n",
    "# Make projectionplots\n",
    "projectionplots(newsystem.atoms)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 3.5. PlaneSet\n",
    "\n",
    "*Added version 1.3.4*\n",
    "\n",
    "Defines a shape based on a list of Plane objects.\n",
    "        \n",
    "- __planes__ (*list of atomman.region.Plane*) The planes to use in constructing the shape.  Points \"below\" all planes are considered inside the shape."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 1008x288 with 3 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Define planes for a triangular region that is open in the z direction (i.e. no limits according to z coordinate)\n",
    "planes = [am.region.Plane(normal=[ 0,-1, 0], point=[  0,-30, 0]), # Triangle base normal to y-axis\n",
    "          am.region.Plane(normal=[ 2, 1, 0], point=[ 30,-30, 0]), # Right side\n",
    "          am.region.Plane(normal=[-2, 1, 0], point=[-30,-30, 0]), # Left side\n",
    "        ] \n",
    "\n",
    "# Create the PlaneSet shape object\n",
    "planeset = am.region.PlaneSet(planes)\n",
    "\n",
    "# Slice to create triangular particle system\n",
    "newsystem = system.atoms_ix[planeset.inside(system.atoms.pos)]\n",
    "\n",
    "# Make projectionplots\n",
    "projectionplots(newsystem.atoms)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    " "
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.4"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
